[INFO] cloning repository https://github.com/postrv/mcafee-three-party-crypto
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/postrv/mcafee-three-party-crypto" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpostrv%2Fmcafee-three-party-crypto", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpostrv%2Fmcafee-three-party-crypto'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4781f7ba59cf84f288c6455a8cf555d1a95b2493
[INFO] testing postrv/mcafee-three-party-crypto against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpostrv%2Fmcafee-three-party-crypto" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/postrv/mcafee-three-party-crypto
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/postrv/mcafee-three-party-crypto
[INFO] tweaked toml for git repo https://github.com/postrv/mcafee-three-party-crypto written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/postrv/mcafee-three-party-crypto on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/postrv/mcafee-three-party-crypto already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded anstyle v1.0.10
[INFO] [stderr]   Downloaded clap_lex v0.7.3
[INFO] [stderr]   Downloaded clap v4.5.21
[INFO] [stderr]   Downloaded clap_builder v4.5.21
[INFO] [stderr]   Downloaded proptest v1.5.0
[INFO] [stderr]   Downloaded rustix v0.38.40
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 745cca9136ba8437f320eb8476565b661819e87c09fe3753b5c78ab7ad93b0d3
[INFO] running `Command { std: "docker" "start" "-a" "745cca9136ba8437f320eb8476565b661819e87c09fe3753b5c78ab7ad93b0d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "745cca9136ba8437f320eb8476565b661819e87c09fe3753b5c78ab7ad93b0d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "745cca9136ba8437f320eb8476565b661819e87c09fe3753b5c78ab7ad93b0d3", kill_on_drop: false }`
[INFO] [stdout] 745cca9136ba8437f320eb8476565b661819e87c09fe3753b5c78ab7ad93b0d3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6be4e857097f1f549b42d864681df517b84610334c002c38f8964d60259e4be5
[INFO] running `Command { std: "docker" "start" "-a" "6be4e857097f1f549b42d864681df517b84610334c002c38f8964d60259e4be5", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling libc v0.2.162
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling cpufeatures v0.2.14
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.87
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling mcafee v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `computation_time` is never read
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TemporalProof {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     computation_time: Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TemporalProof` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     id: u8,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shares` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] 74 |     config: SharingConfig,
[INFO] [stdout] 75 |     shares: Vec<Option<Share>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pad_data` is never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/vdf/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use vdf::temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalConfig`
[INFO] [stdout]   --> src/crypto/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use vdf::temporal::TemporalConfig;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sharing::ThreePartySecretSharing`
[INFO] [stdout]   --> src/crypto/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use sharing::ThreePartySecretSharing;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut secret_bytes = secret.as_bytes().to_vec();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_a`
[INFO] [stdout]    --> src/main.rs:138:52
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_b`
[INFO] [stdout]    --> src/main.rs:138:68
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_c`
[INFO] [stdout]    --> src/main.rs:138:84
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_parts`
[INFO] [stdout]    --> src/main.rs:187:10
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let (auth_parts, verification_hash, timestamp) = auth.create_auth_challenge(
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_parts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CYCLE_LENGTH` is never used
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const CYCLE_LENGTH: usize = 4;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalProof` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TemporalProof {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalConfig` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TemporalConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalVDF` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct TemporalVDF {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_initialized` is never used
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl TemporalVDF {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 61 |     /// Check if the VDF has been initialized with input data
[INFO] [stdout] 62 |     pub fn is_initialized(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/crypto/vdf/temporal.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl TemporalVDF {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  68 |     pub fn new(config: TemporalConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn initialize(&mut self, input: &[u8]) -> CryptoResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iterate(&mut self) -> CryptoResult<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub fn generate_proof(&self) -> CryptoResult<TemporalProof> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn verify_proof(&self, proof: &TemporalProof) -> CryptoResult<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn is_complete(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn get_output(&self) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_ITERATIONS` is never used
[INFO] [stdout]  --> src/crypto/vdf/state.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const MAX_ITERATIONS: usize = 4;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VDFState` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/state.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct VDFState {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `advance`, `current_iteration`, `is_complete`, and `elapsed` are never used
[INFO] [stdout]   --> src/crypto/vdf/state.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl VDFState {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 27 |     /// Creates a new VDF state tracker
[INFO] [stdout] 28 |     pub fn new(min_iteration_time: Duration, enforce_timing: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn advance(&mut self) -> CryptoResult<()> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn current_iteration(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn is_complete(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn elapsed(&self) -> Duration {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_SIZE` is never used
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const BLOCK_SIZE: usize = 1024 * 64; // 64KB blocks
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Share` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `verify`, and `data` are never used
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Share {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 28 |     /// Creates a new share with given data and ID
[INFO] [stdout] 29 |     pub fn new(data: Vec<u8>, id: u8) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn verify(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn data(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SharingConfig` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct SharingConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThreePartySecretSharing` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- associated items in this implementation
[INFO] [stdout]  79 |     /// Creates a new instance with given configuration
[INFO] [stdout]  80 |     pub fn new(config: SharingConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn split(&mut self, secret: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn reconstruct(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     fn split_parallel(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn split_sequential(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn reconstruct_parallel(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     fn reconstruct_sequential(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xor_bytes` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn xor_bytes(a: &[u8], b: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_bytes` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn random_bytes(length: usize) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enforce_delay` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn enforce_delay(start: Instant, min_delay: Duration) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pad_to_block_size` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn pad_to_block_size(data: &[u8], block_size: usize) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT` is never used
[INFO] [stdout]  --> src/crypto/utils/padding.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) const ALIGNMENT: usize = 16;
[INFO] [stdout]   |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LENGTH_SIZE` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const LENGTH_SIZE: usize = 8; // Using u64 for length prefix
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_padded_size` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn calculate_padded_size(input_size: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pad_data` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn pad_data(data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpad_data` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn unpad_data(padded: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CryptoError` is never used
[INFO] [stdout]  --> src/error.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum CryptoError {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CryptoResult` is never used
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type CryptoResult<T> = Result<T, CryptoError>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.76s
[INFO] running `Command { std: "docker" "inspect" "6be4e857097f1f549b42d864681df517b84610334c002c38f8964d60259e4be5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6be4e857097f1f549b42d864681df517b84610334c002c38f8964d60259e4be5", kill_on_drop: false }`
[INFO] [stdout] 6be4e857097f1f549b42d864681df517b84610334c002c38f8964d60259e4be5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 972b309fb12112115c065f7b121e45284a46f75679cd2b66477839ce2d85caf9
[INFO] running `Command { std: "docker" "start" "-a" "972b309fb12112115c065f7b121e45284a46f75679cd2b66477839ce2d85caf9", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.162
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling rustix v0.38.40
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling serde_json v1.0.132
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling fastrand v2.2.0
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling clap_lex v0.7.3
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling clap_builder v4.5.21
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling test-case-core v3.3.1
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling tempfile v3.14.0
[INFO] [stderr]    Compiling test-case-macros v3.3.1
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling clap v4.5.21
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling is-terminal v0.4.13
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.4
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling proptest v1.5.0
[INFO] [stderr]    Compiling test-case v3.3.1
[INFO] [stderr]    Compiling mcafee v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `computation_time` is never read
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TemporalProof {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     computation_time: Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TemporalProof` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     id: u8,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shares` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] 74 |     config: SharingConfig,
[INFO] [stdout] 75 |     shares: Vec<Option<Share>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pad_data` is never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/vdf/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use vdf::temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalConfig`
[INFO] [stdout]   --> src/crypto/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use vdf::temporal::TemporalConfig;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sharing::ThreePartySecretSharing`
[INFO] [stdout]   --> src/crypto/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use sharing::ThreePartySecretSharing;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut secret_bytes = secret.as_bytes().to_vec();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_a`
[INFO] [stdout]    --> src/main.rs:138:52
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_b`
[INFO] [stdout]    --> src/main.rs:138:68
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_c`
[INFO] [stdout]    --> src/main.rs:138:84
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_parts`
[INFO] [stdout]    --> src/main.rs:187:10
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let (auth_parts, verification_hash, timestamp) = auth.create_auth_challenge(
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_parts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CYCLE_LENGTH` is never used
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const CYCLE_LENGTH: usize = 4;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalProof` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TemporalProof {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalConfig` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TemporalConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TemporalVDF` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct TemporalVDF {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_initialized` is never used
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl TemporalVDF {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 61 |     /// Check if the VDF has been initialized with input data
[INFO] [stdout] 62 |     pub fn is_initialized(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/crypto/vdf/temporal.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl TemporalVDF {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  68 |     pub fn new(config: TemporalConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn initialize(&mut self, input: &[u8]) -> CryptoResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iterate(&mut self) -> CryptoResult<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub fn generate_proof(&self) -> CryptoResult<TemporalProof> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn verify_proof(&self, proof: &TemporalProof) -> CryptoResult<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn is_complete(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn get_output(&self) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_ITERATIONS` is never used
[INFO] [stdout]  --> src/crypto/vdf/state.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const MAX_ITERATIONS: usize = 4;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VDFState` is never constructed
[INFO] [stdout]   --> src/crypto/vdf/state.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct VDFState {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `advance`, `current_iteration`, `is_complete`, and `elapsed` are never used
[INFO] [stdout]   --> src/crypto/vdf/state.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl VDFState {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 27 |     /// Creates a new VDF state tracker
[INFO] [stdout] 28 |     pub fn new(min_iteration_time: Duration, enforce_timing: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn advance(&mut self) -> CryptoResult<()> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn current_iteration(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn is_complete(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn elapsed(&self) -> Duration {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_SIZE` is never used
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const BLOCK_SIZE: usize = 1024 * 64; // 64KB blocks
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Share` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `verify`, and `data` are never used
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Share {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 28 |     /// Creates a new share with given data and ID
[INFO] [stdout] 29 |     pub fn new(data: Vec<u8>, id: u8) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn verify(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn data(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SharingConfig` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct SharingConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThreePartySecretSharing` is never constructed
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- associated items in this implementation
[INFO] [stdout]  79 |     /// Creates a new instance with given configuration
[INFO] [stdout]  80 |     pub fn new(config: SharingConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn split(&mut self, secret: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn reconstruct(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     fn split_parallel(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn split_sequential(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn reconstruct_parallel(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     fn reconstruct_sequential(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xor_bytes` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn xor_bytes(a: &[u8], b: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_bytes` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn random_bytes(length: usize) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enforce_delay` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn enforce_delay(start: Instant, min_delay: Duration) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pad_to_block_size` is never used
[INFO] [stdout]   --> src/crypto/utils/mod.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn pad_to_block_size(data: &[u8], block_size: usize) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ALIGNMENT` is never used
[INFO] [stdout]  --> src/crypto/utils/padding.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) const ALIGNMENT: usize = 16;
[INFO] [stdout]   |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LENGTH_SIZE` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const LENGTH_SIZE: usize = 8; // Using u64 for length prefix
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_padded_size` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn calculate_padded_size(input_size: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pad_data` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn pad_data(data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpad_data` is never used
[INFO] [stdout]   --> src/crypto/utils/padding.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn unpad_data(padded: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CryptoError` is never used
[INFO] [stdout]  --> src/error.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum CryptoError {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `CryptoResult` is never used
[INFO] [stdout]   --> src/error.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type CryptoResult<T> = Result<T, CryptoError>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::{debug, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/vdf/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::random_bytes`
[INFO] [stdout]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::random_bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::CryptoResult`
[INFO] [stdout]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::error::CryptoResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalVDF`
[INFO] [stdout]  --> src/crypto/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use vdf::temporal::TemporalVDF;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vdf::temporal::TemporalConfig`
[INFO] [stdout]   --> src/crypto/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use vdf::temporal::TemporalConfig;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sharing::ThreePartySecretSharing`
[INFO] [stdout]   --> src/crypto/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use sharing::ThreePartySecretSharing;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padded_size`
[INFO] [stdout]    --> tests/integration_tests.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 |     let padded_size = shares[0].data().len();
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_size`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `dimensions`, `bits_per_pixel`, `modality`, and `share_padded` are never read
[INFO] [stdout]   --> examples/medical_image.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct ProtectedImage {
[INFO] [stdout]    |        -------------- fields in this struct
[INFO] [stdout] 19 |     dimensions: (usize, usize),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 20 |     bits_per_pixel: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     modality: ImageModality,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     share_padded: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProtectedImage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `MRI`, `CT`, and `Ultrasound` are never constructed
[INFO] [stdout]   --> examples/medical_image.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | enum ImageModality {
[INFO] [stdout]    |      ------------- variants in this enum
[INFO] [stdout] 30 |     XRay,
[INFO] [stdout] 31 |     MRI,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 32 |     CT,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 33 |     Ultrasound,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ImageModality` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     id: u8,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shares` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] 74 |     config: SharingConfig,
[INFO] [stdout] 75 |     shares: Vec<Option<Share>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pad_data` is never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut secret_bytes = secret.as_bytes().to_vec();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_a`
[INFO] [stdout]    --> src/main.rs:138:52
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_b`
[INFO] [stdout]    --> src/main.rs:138:68
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_c`
[INFO] [stdout]    --> src/main.rs:138:84
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stdout]     |                                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `auth_parts`
[INFO] [stdout]    --> src/main.rs:187:10
[INFO] [stdout]     |
[INFO] [stdout] 187 |     let (auth_parts, verification_hash, timestamp) = auth.create_auth_challenge(
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_parts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `memory_size` and `verification_steps` are never read
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TemporalConfig {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub memory_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 35 |     /// Number of verification steps required
[INFO] [stdout] 36 |     pub verification_steps: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TemporalConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_initialized` is never used
[INFO] [stdout]   --> src/crypto/vdf/temporal.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl TemporalVDF {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 61 |     /// Check if the VDF has been initialized with input data
[INFO] [stdout] 62 |     pub fn is_initialized(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `elapsed` is never used
[INFO] [stdout]   --> src/crypto/vdf/state.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl VDFState {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn elapsed(&self) -> Duration {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Share {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     id: u8,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `data` is never used
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Share {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn data(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `block_size` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct SharingConfig {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub block_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharingConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shares` is never read
[INFO] [stdout]   --> src/crypto/sharing/mod.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct ThreePartySecretSharing {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] 74 |     config: SharingConfig,
[INFO] [stdout] 75 |     shares: Vec<Option<Share>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pad_data` is never used
[INFO] [stdout]    --> src/crypto/sharing/mod.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl ThreePartySecretSharing {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Timeout` is never constructed
[INFO] [stdout]   --> src/error.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum CryptoError {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 28 |     Timeout(Duration),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CryptoError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 57.78s
[INFO] running `Command { std: "docker" "inspect" "972b309fb12112115c065f7b121e45284a46f75679cd2b66477839ce2d85caf9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "972b309fb12112115c065f7b121e45284a46f75679cd2b66477839ce2d85caf9", kill_on_drop: false }`
[INFO] [stdout] 972b309fb12112115c065f7b121e45284a46f75679cd2b66477839ce2d85caf9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a03d2a2b998cc829dd14759fbd88c3978ef86985d75a048ab87beae3472067e4
[INFO] running `Command { std: "docker" "start" "-a" "a03d2a2b998cc829dd14759fbd88c3978ef86985d75a048ab87beae3472067e4", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/crypto/vdf/state.rs:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tracing::{debug, info, warn};
[INFO] [stderr]   |                            ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/crypto/sharing/mod.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::random_bytes`
[INFO] [stderr]  --> src/crypto/utils/padding.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use super::random_bytes;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::error::CryptoResult`
[INFO] [stderr]  --> src/crypto/utils/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::error::CryptoResult;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `computation_time` is never read
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct TemporalProof {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 21 |     computation_time: Duration,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TemporalProof` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct Share {
[INFO] [stderr]    |            ----- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 22 |     id: u8,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `shares` is never read
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:75:5
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub struct ThreePartySecretSharing {
[INFO] [stderr]    |            ----------------------- field in this struct
[INFO] [stderr] 74 |     config: SharingConfig,
[INFO] [stderr] 75 |     shares: Vec<Option<Share>>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `pad_data` is never used
[INFO] [stderr]    --> src/crypto/sharing/mod.rs:148:8
[INFO] [stderr]     |
[INFO] [stderr]  78 | impl ThreePartySecretSharing {
[INFO] [stderr]     | ---------------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `mcafee` (lib) generated 8 warnings (run `cargo fix --lib -p mcafee` to apply 4 suggestions)
[INFO] [stderr] warning: unused import: `temporal::TemporalVDF`
[INFO] [stderr]  --> src/crypto/vdf/mod.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub use temporal::TemporalVDF;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `vdf::temporal::TemporalVDF`
[INFO] [stderr]  --> src/crypto/mod.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub use vdf::temporal::TemporalVDF;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `vdf::temporal::TemporalConfig`
[INFO] [stderr]   --> src/crypto/mod.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub use vdf::temporal::TemporalConfig;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sharing::ThreePartySecretSharing`
[INFO] [stderr]   --> src/crypto/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use sharing::ThreePartySecretSharing;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 |         let mut secret_bytes = secret.as_bytes().to_vec();
[INFO] [stderr]    |             ----^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `token_a`
[INFO] [stderr]    --> src/main.rs:138:52
[INFO] [stderr]     |
[INFO] [stderr] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stderr]     |                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_a`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `token_b`
[INFO] [stderr]    --> src/main.rs:138:68
[INFO] [stderr]     |
[INFO] [stderr] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stderr]     |                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_b`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `token_c`
[INFO] [stderr]    --> src/main.rs:138:84
[INFO] [stderr]     |
[INFO] [stderr] 138 |     fn create_auth_challenge(&self, message: &str, token_a: &[u8], token_b: &[u8], token_c: &[u8]) -> (Vec<Vec<u8>>, String, String) {
[INFO] [stderr]     |                                                                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `auth_parts`
[INFO] [stderr]    --> src/main.rs:187:10
[INFO] [stderr]     |
[INFO] [stderr] 187 |     let (auth_parts, verification_hash, timestamp) = auth.create_auth_challenge(
[INFO] [stderr]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_parts`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `CYCLE_LENGTH` is never used
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:11:11
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const CYCLE_LENGTH: usize = 4;
[INFO] [stderr]    |           ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TemporalProof` is never constructed
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct TemporalProof {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TemporalConfig` is never constructed
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:28:12
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub struct TemporalConfig {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TemporalVDF` is never constructed
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:52:12
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub struct TemporalVDF {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_initialized` is never used
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:62:12
[INFO] [stderr]    |
[INFO] [stderr] 60 | impl TemporalVDF {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] 61 |     /// Check if the VDF has been initialized with input data
[INFO] [stderr] 62 |     pub fn is_initialized(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/crypto/vdf/temporal.rs:68:12
[INFO] [stderr]     |
[INFO] [stderr]  67 | impl TemporalVDF {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr]  68 |     pub fn new(config: TemporalConfig) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  78 |     pub fn initialize(&mut self, input: &[u8]) -> CryptoResult<()> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 |     pub fn iterate(&mut self) -> CryptoResult<()> {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 169 |     pub fn generate_proof(&self) -> CryptoResult<TemporalProof> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 209 |     pub fn verify_proof(&self, proof: &TemporalProof) -> CryptoResult<bool> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 270 |     pub fn is_complete(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 275 |     pub fn get_output(&self) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_ITERATIONS` is never used
[INFO] [stderr]  --> src/crypto/vdf/state.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const MAX_ITERATIONS: usize = 4;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VDFState` is never constructed
[INFO] [stderr]   --> src/crypto/vdf/state.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct VDFState {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `advance`, `current_iteration`, `is_complete`, and `elapsed` are never used
[INFO] [stderr]   --> src/crypto/vdf/state.rs:28:12
[INFO] [stderr]    |
[INFO] [stderr] 26 | impl VDFState {
[INFO] [stderr]    | ------------- associated items in this implementation
[INFO] [stderr] 27 |     /// Creates a new VDF state tracker
[INFO] [stderr] 28 |     pub fn new(min_iteration_time: Duration, enforce_timing: bool) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn advance(&mut self) -> CryptoResult<()> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 69 |     pub fn current_iteration(&self) -> usize {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 |     pub fn is_complete(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 79 |     pub fn elapsed(&self) -> Duration {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BLOCK_SIZE` is never used
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:14:7
[INFO] [stderr]    |
[INFO] [stderr] 14 | const BLOCK_SIZE: usize = 1024 * 64; // 64KB blocks
[INFO] [stderr]    |       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Share` is never constructed
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct Share {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `verify`, and `data` are never used
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl Share {
[INFO] [stderr]    | ---------- associated items in this implementation
[INFO] [stderr] 28 |     /// Creates a new share with given data and ID
[INFO] [stderr] 29 |     pub fn new(data: Vec<u8>, id: u8) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     pub fn verify(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub fn data(&self) -> &[u8] {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SharingConfig` is never constructed
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:53:12
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub struct SharingConfig {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ThreePartySecretSharing` is never constructed
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub struct ThreePartySecretSharing {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/crypto/sharing/mod.rs:80:12
[INFO] [stderr]     |
[INFO] [stderr]  78 | impl ThreePartySecretSharing {
[INFO] [stderr]     | ---------------------------- associated items in this implementation
[INFO] [stderr]  79 |     /// Creates a new instance with given configuration
[INFO] [stderr]  80 |     pub fn new(config: SharingConfig) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  88 |     pub fn default() -> Self {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  93 |     pub fn split(&mut self, secret: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 109 |     pub fn reconstruct(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 148 |     fn pad_data(&self, data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 209 |     fn split_parallel(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 214 |     fn split_sequential(&mut self, data: &[u8]) -> CryptoResult<Vec<Share>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 262 |     fn reconstruct_parallel(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 267 |     fn reconstruct_sequential(&self, shares: &[Share]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `xor_bytes` is never used
[INFO] [stderr]   --> src/crypto/utils/mod.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn xor_bytes(a: &[u8], b: &[u8]) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `random_bytes` is never used
[INFO] [stderr]   --> src/crypto/utils/mod.rs:16:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub fn random_bytes(length: usize) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `enforce_delay` is never used
[INFO] [stderr]   --> src/crypto/utils/mod.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn enforce_delay(start: Instant, min_delay: Duration) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pad_to_block_size` is never used
[INFO] [stderr]   --> src/crypto/utils/mod.rs:31:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn pad_to_block_size(data: &[u8], block_size: usize) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ALIGNMENT` is never used
[INFO] [stderr]  --> src/crypto/utils/padding.rs:9:18
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub(crate) const ALIGNMENT: usize = 16;
[INFO] [stderr]   |                  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LENGTH_SIZE` is never used
[INFO] [stderr]   --> src/crypto/utils/padding.rs:10:7
[INFO] [stderr]    |
[INFO] [stderr] 10 | const LENGTH_SIZE: usize = 8; // Using u64 for length prefix
[INFO] [stderr]    |       ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate_padded_size` is never used
[INFO] [stderr]   --> src/crypto/utils/padding.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub fn calculate_padded_size(input_size: usize) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pad_data` is never used
[INFO] [stderr]   --> src/crypto/utils/padding.rs:20:8
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub fn pad_data(data: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unpad_data` is never used
[INFO] [stderr]   --> src/crypto/utils/padding.rs:47:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn unpad_data(padded: &[u8]) -> CryptoResult<Vec<u8>> {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `CryptoError` is never used
[INFO] [stderr]  --> src/error.rs:8:10
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub enum CryptoError {
[INFO] [stderr]   |          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `CryptoResult` is never used
[INFO] [stderr]   --> src/error.rs:31:10
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub type CryptoResult<T> = Result<T, CryptoError>;
[INFO] [stderr]    |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `mcafee` (bin "mcafee") generated 39 warnings (4 duplicates) (run `cargo fix --bin "mcafee" -p mcafee` to apply 9 suggestions)
[INFO] [stderr] warning: fields `memory_size` and `verification_steps` are never read
[INFO] [stderr]   --> src/crypto/vdf/temporal.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub struct TemporalConfig {
[INFO] [stderr]    |            -------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 34 |     pub memory_size: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 35 |     /// Number of verification steps required
[INFO] [stderr] 36 |     pub verification_steps: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TemporalConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `elapsed` is never used
[INFO] [stderr]   --> src/crypto/vdf/state.rs:79:12
[INFO] [stderr]    |
[INFO] [stderr] 26 | impl VDFState {
[INFO] [stderr]    | ------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 79 |     pub fn elapsed(&self) -> Duration {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `data` is never used
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:46:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl Share {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub fn data(&self) -> &[u8] {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `block_size` is never read
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub struct SharingConfig {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 59 |     pub block_size: usize,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SharingConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Timeout` is never constructed
[INFO] [stderr]   --> src/error.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub enum CryptoError {
[INFO] [stderr]    |          ----------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 28 |     Timeout(Duration),
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CryptoError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/crypto/sharing/mod.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct Share {
[INFO] [stderr]    |            ----- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 22 |     id: u8,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Share` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `padded_size`
[INFO] [stderr]    --> tests/integration_tests.rs:162:9
[INFO] [stderr]     |
[INFO] [stderr] 162 |     let padded_size = shares[0].data().len();
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padded_size`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `dimensions`, `bits_per_pixel`, `modality`, and `share_padded` are never read
[INFO] [stderr]   --> examples/medical_image.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | struct ProtectedImage {
[INFO] [stderr]    |        -------------- fields in this struct
[INFO] [stderr] 19 |     dimensions: (usize, usize),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 20 |     bits_per_pixel: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 21 |     modality: ImageModality,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     share_padded: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ProtectedImage` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variants `MRI`, `CT`, and `Ultrasound` are never constructed
[INFO] [stderr]   --> examples/medical_image.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | enum ImageModality {
[INFO] [stderr]    |      ------------- variants in this enum
[INFO] [stderr] 30 |     XRay,
[INFO] [stderr] 31 |     MRI,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 32 |     CT,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 33 |     Ultrasound,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ImageModality` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `mcafee` (bin "mcafee" test) generated 22 warnings (17 duplicates)
[INFO] [stderr] warning: `mcafee` (lib test) generated 7 warnings (6 duplicates)
[INFO] [stderr] warning: `mcafee` (test "integration_tests") generated 1 warning (run `cargo fix --test "integration_tests" -p mcafee` to apply 1 suggestion)
[INFO] [stderr] warning: `mcafee` (example "medical_image") generated 2 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.20s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mcafee-5ebccc29586a087e)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test crypto::utils::padding::tests::test_empty_input ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_padding_alignment ... ok
[INFO] [stdout] test crypto::sharing::tests::test_invalid_shares ... ok
[INFO] [stdout] test crypto::utils::tests::test_pad_to_block_size ... ok
[INFO] [stdout] test crypto::utils::tests::test_random_bytes ... ok
[INFO] [stdout] test crypto::sharing::tests::test_basic_sharing ... ok
[INFO] [stdout] test crypto::utils::tests::test_xor_bytes ... ok
[INFO] [stdout] test crypto::vdf::temporal::tests::test_incomplete_state ... ok
[INFO] [stdout] test crypto::vdf::temporal::tests::test_proof_state_tracking ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.168568Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 8.08µs
[INFO] [stdout] [2m2026-03-30T02:22:59.168602Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 3.69µs
[INFO] [stdout] [2m2026-03-30T02:22:59.168615Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 3.01µs
[INFO] [stdout] [2m2026-03-30T02:22:59.168627Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 3.04µs
[INFO] [stdout] test crypto::vdf::temporal::tests::test_proof_verification ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.169536Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m1 [3melapsed[0m[2m=[0m10.96µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169570Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m2 [3melapsed[0m[2m=[0m49.29µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169582Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m3 [3melapsed[0m[2m=[0m62.17µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169615Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m4 [3melapsed[0m[2m=[0m94.34µs
[INFO] [stdout] test crypto::vdf::state::tests::test_state_progression ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.169795Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 4.21µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169815Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 2.9µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169827Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 2.87µs
[INFO] [stdout] [2m2026-03-30T02:22:59.169837Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 2.46µs
[INFO] [stdout] test crypto::vdf::temporal::tests::test_vdf_cycle ... ok
[INFO] [stdout] test tests::test_default_config ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_large_data_padding ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_medical_image_size ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.218092Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m2 [3melapsed[0m[2m=[0m50.076429ms
[INFO] [stdout] test crypto::vdf::state::tests::test_timing_enforcement ... ok
[INFO] [stdout] test crypto::utils::tests::test_enforce_delay ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.269084Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 100.076769ms
[INFO] [stdout] test crypto::sharing::tests::test_large_data_sharing ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.369244Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 100.083429ms
[INFO] [stdout] [2m2026-03-30T02:22:59.477505Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 108.174229ms
[INFO] [stdout] [2m2026-03-30T02:22:59.577677Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 100.083929ms
[INFO] [stdout] test crypto::vdf::temporal::tests::test_state_consistency ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mcafee-24fb47beb405e845)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test crypto::sharing::tests::test_basic_sharing ... ok
[INFO] [stdout] test crypto::sharing::tests::test_invalid_shares ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_padding_alignment ... ok
[INFO] [stdout] test crypto::utils::tests::test_xor_bytes ... ok
[INFO] [stdout] test crypto::utils::tests::test_pad_to_block_size ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_empty_input ... ok
[INFO] [stdout] test crypto::utils::tests::test_random_bytes ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_large_data_padding ... ok
[INFO] [stdout] test crypto::vdf::state::tests::test_state_progression ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.590967Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 9.46µs
[INFO] [stdout] [2m2026-03-30T02:22:59.590999Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 3.28µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591010Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 3.01µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591021Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 2.89µs
[INFO] [stdout] test crypto::vdf::temporal::tests::test_incomplete_state ... ok
[INFO] [stdout] test crypto::vdf::temporal::tests::test_proof_verification ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.591384Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 4.73µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591412Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 3.56µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591426Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 3.29µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591449Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 3.23µs
[INFO] [stdout] test crypto::vdf::temporal::tests::test_vdf_cycle ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.591632Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 4.04µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591651Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 2.59µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591662Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 3.1µs
[INFO] [stdout] [2m2026-03-30T02:22:59.591674Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 3.25µs
[INFO] [stdout] test crypto::vdf::temporal::tests::test_proof_state_tracking ... ok
[INFO] [stdout] test crypto::utils::padding::tests::test_medical_image_size ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.641559Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::state[0m[2m:[0m Completed VDF iteration [3miteration[0m[2m=[0m2 [3melapsed[0m[2m=[0m51.14516ms
[INFO] [stdout] test crypto::vdf::state::tests::test_timing_enforcement ... ok
[INFO] [stdout] test crypto::utils::tests::test_enforce_delay ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.693683Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 101.800629ms
[INFO] [stdout] [2m2026-03-30T02:22:59.795498Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 101.685399ms
[INFO] [stdout] test crypto::sharing::tests::test_large_data_sharing ... ok
[INFO] [stdout] [2m2026-03-30T02:22:59.895729Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 100.085549ms
[INFO] [stdout] [2m2026-03-30T02:22:59.995967Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 100.087279ms
[INFO] [stdout] test crypto::vdf::temporal::tests::test_state_consistency ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-e82a333e697b526a)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] [2m2026-03-30T02:23:00.008732Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Original size: 100000, Padded size: 100016
[INFO] [stdout] [2m2026-03-30T02:23:00.009066Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 12.66µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009119Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 8.66µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009138Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 7.76µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009155Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 7.56µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009255Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 8.17µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009277Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 7.75µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009294Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 7.7µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009309Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 7.4µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009411Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 8.56µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009431Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 7.53µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009447Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 7.51µs
[INFO] [stdout] [2m2026-03-30T02:23:00.009481Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 7.73µs
[INFO] [stdout] test test_secret_sharing_with_vdf ... ok
[INFO] [stdout] [2m2026-03-30T02:23:00.009654Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Splitting data into shares...
[INFO] [stdout] [2m2026-03-30T02:23:00.110587Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Reconstructing from shares...
[INFO] [stdout] test test_large_data_parallel ... ok
[INFO] [stdout] [2m2026-03-30T02:23:00.420716Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Splitting medical image...
[INFO] [stdout] [2m2026-03-30T02:23:00.950276Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Applying temporal protection...
[INFO] [stdout] [2m2026-03-30T02:23:01.490136Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 50.983239ms
[INFO] [stdout] [2m2026-03-30T02:23:01.543792Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 53.27623ms
[INFO] [stdout] [2m2026-03-30T02:23:01.597643Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 53.738519ms
[INFO] [stdout] [2m2026-03-30T02:23:01.661183Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 63.39854ms
[INFO] [stdout] [2m2026-03-30T02:23:02.238876Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 50.084419ms
[INFO] [stdout] [2m2026-03-30T02:23:02.295047Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 56.03397ms
[INFO] [stdout] [2m2026-03-30T02:23:02.366913Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 70.413519ms
[INFO] [stdout] [2m2026-03-30T02:23:02.424437Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 57.41048ms
[INFO] [stdout] [2m2026-03-30T02:23:03.150032Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 1/4 in 55.32413ms
[INFO] [stdout] [2m2026-03-30T02:23:03.204241Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 2/4 in 54.068009ms
[INFO] [stdout] [2m2026-03-30T02:23:03.260605Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 3/4 in 56.21983ms
[INFO] [stdout] [2m2026-03-30T02:23:03.311214Z[0m [32m INFO[0m [2mmcafee::crypto::vdf::temporal[0m[2m:[0m Completed iteration 4/4 in 50.480649ms
[INFO] [stdout] [2m2026-03-30T02:23:03.435121Z[0m [32m INFO[0m [2mintegration_tests[0m[2m:[0m Verifying reconstruction...
[INFO] [stdout] test test_realistic_medical_image ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.52s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests mcafee
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a03d2a2b998cc829dd14759fbd88c3978ef86985d75a048ab87beae3472067e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a03d2a2b998cc829dd14759fbd88c3978ef86985d75a048ab87beae3472067e4", kill_on_drop: false }`
[INFO] [stdout] a03d2a2b998cc829dd14759fbd88c3978ef86985d75a048ab87beae3472067e4
